package sanshui.system.trade.db.entity;

import java.util.ArrayList;
import java.util.List;

public class TradeHisPositionExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public TradeHisPositionExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andPositionNoIsNull() {
            addCriterion("position_no is null");
            return (Criteria) this;
        }

        public Criteria andPositionNoIsNotNull() {
            addCriterion("position_no is not null");
            return (Criteria) this;
        }

        public Criteria andPositionNoEqualTo(Long value) {
            addCriterion("position_no =", value, "positionNo");
            return (Criteria) this;
        }

        public Criteria andPositionNoNotEqualTo(Long value) {
            addCriterion("position_no <>", value, "positionNo");
            return (Criteria) this;
        }

        public Criteria andPositionNoGreaterThan(Long value) {
            addCriterion("position_no >", value, "positionNo");
            return (Criteria) this;
        }

        public Criteria andPositionNoGreaterThanOrEqualTo(Long value) {
            addCriterion("position_no >=", value, "positionNo");
            return (Criteria) this;
        }

        public Criteria andPositionNoLessThan(Long value) {
            addCriterion("position_no <", value, "positionNo");
            return (Criteria) this;
        }

        public Criteria andPositionNoLessThanOrEqualTo(Long value) {
            addCriterion("position_no <=", value, "positionNo");
            return (Criteria) this;
        }

        public Criteria andPositionNoIn(List<Long> values) {
            addCriterion("position_no in", values, "positionNo");
            return (Criteria) this;
        }

        public Criteria andPositionNoNotIn(List<Long> values) {
            addCriterion("position_no not in", values, "positionNo");
            return (Criteria) this;
        }

        public Criteria andPositionNoBetween(Long value1, Long value2) {
            addCriterion("position_no between", value1, value2, "positionNo");
            return (Criteria) this;
        }

        public Criteria andPositionNoNotBetween(Long value1, Long value2) {
            addCriterion("position_no not between", value1, value2, "positionNo");
            return (Criteria) this;
        }

        public Criteria andBuyPriceIsNull() {
            addCriterion("buy_price is null");
            return (Criteria) this;
        }

        public Criteria andBuyPriceIsNotNull() {
            addCriterion("buy_price is not null");
            return (Criteria) this;
        }

        public Criteria andBuyPriceEqualTo(String value) {
            addCriterion("buy_price =", value, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceNotEqualTo(String value) {
            addCriterion("buy_price <>", value, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceGreaterThan(String value) {
            addCriterion("buy_price >", value, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceGreaterThanOrEqualTo(String value) {
            addCriterion("buy_price >=", value, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceLessThan(String value) {
            addCriterion("buy_price <", value, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceLessThanOrEqualTo(String value) {
            addCriterion("buy_price <=", value, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceLike(String value) {
            addCriterion("buy_price like", value, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceNotLike(String value) {
            addCriterion("buy_price not like", value, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceIn(List<String> values) {
            addCriterion("buy_price in", values, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceNotIn(List<String> values) {
            addCriterion("buy_price not in", values, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceBetween(String value1, String value2) {
            addCriterion("buy_price between", value1, value2, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andBuyPriceNotBetween(String value1, String value2) {
            addCriterion("buy_price not between", value1, value2, "buyPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceIsNull() {
            addCriterion("sell_price is null");
            return (Criteria) this;
        }

        public Criteria andSellPriceIsNotNull() {
            addCriterion("sell_price is not null");
            return (Criteria) this;
        }

        public Criteria andSellPriceEqualTo(String value) {
            addCriterion("sell_price =", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceNotEqualTo(String value) {
            addCriterion("sell_price <>", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceGreaterThan(String value) {
            addCriterion("sell_price >", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceGreaterThanOrEqualTo(String value) {
            addCriterion("sell_price >=", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceLessThan(String value) {
            addCriterion("sell_price <", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceLessThanOrEqualTo(String value) {
            addCriterion("sell_price <=", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceLike(String value) {
            addCriterion("sell_price like", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceNotLike(String value) {
            addCriterion("sell_price not like", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceIn(List<String> values) {
            addCriterion("sell_price in", values, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceNotIn(List<String> values) {
            addCriterion("sell_price not in", values, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceBetween(String value1, String value2) {
            addCriterion("sell_price between", value1, value2, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceNotBetween(String value1, String value2) {
            addCriterion("sell_price not between", value1, value2, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andStockNumIsNull() {
            addCriterion("stock_num is null");
            return (Criteria) this;
        }

        public Criteria andStockNumIsNotNull() {
            addCriterion("stock_num is not null");
            return (Criteria) this;
        }

        public Criteria andStockNumEqualTo(String value) {
            addCriterion("stock_num =", value, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumNotEqualTo(String value) {
            addCriterion("stock_num <>", value, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumGreaterThan(String value) {
            addCriterion("stock_num >", value, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumGreaterThanOrEqualTo(String value) {
            addCriterion("stock_num >=", value, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumLessThan(String value) {
            addCriterion("stock_num <", value, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumLessThanOrEqualTo(String value) {
            addCriterion("stock_num <=", value, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumLike(String value) {
            addCriterion("stock_num like", value, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumNotLike(String value) {
            addCriterion("stock_num not like", value, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumIn(List<String> values) {
            addCriterion("stock_num in", values, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumNotIn(List<String> values) {
            addCriterion("stock_num not in", values, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumBetween(String value1, String value2) {
            addCriterion("stock_num between", value1, value2, "stockNum");
            return (Criteria) this;
        }

        public Criteria andStockNumNotBetween(String value1, String value2) {
            addCriterion("stock_num not between", value1, value2, "stockNum");
            return (Criteria) this;
        }

        public Criteria andBsTimeIsNull() {
            addCriterion("bs_time is null");
            return (Criteria) this;
        }

        public Criteria andBsTimeIsNotNull() {
            addCriterion("bs_time is not null");
            return (Criteria) this;
        }

        public Criteria andBsTimeEqualTo(String value) {
            addCriterion("bs_time =", value, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeNotEqualTo(String value) {
            addCriterion("bs_time <>", value, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeGreaterThan(String value) {
            addCriterion("bs_time >", value, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeGreaterThanOrEqualTo(String value) {
            addCriterion("bs_time >=", value, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeLessThan(String value) {
            addCriterion("bs_time <", value, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeLessThanOrEqualTo(String value) {
            addCriterion("bs_time <=", value, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeLike(String value) {
            addCriterion("bs_time like", value, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeNotLike(String value) {
            addCriterion("bs_time not like", value, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeIn(List<String> values) {
            addCriterion("bs_time in", values, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeNotIn(List<String> values) {
            addCriterion("bs_time not in", values, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeBetween(String value1, String value2) {
            addCriterion("bs_time between", value1, value2, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBsTimeNotBetween(String value1, String value2) {
            addCriterion("bs_time not between", value1, value2, "bsTime");
            return (Criteria) this;
        }

        public Criteria andBuyFeeIsNull() {
            addCriterion("buy_fee is null");
            return (Criteria) this;
        }

        public Criteria andBuyFeeIsNotNull() {
            addCriterion("buy_fee is not null");
            return (Criteria) this;
        }

        public Criteria andBuyFeeEqualTo(String value) {
            addCriterion("buy_fee =", value, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeNotEqualTo(String value) {
            addCriterion("buy_fee <>", value, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeGreaterThan(String value) {
            addCriterion("buy_fee >", value, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeGreaterThanOrEqualTo(String value) {
            addCriterion("buy_fee >=", value, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeLessThan(String value) {
            addCriterion("buy_fee <", value, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeLessThanOrEqualTo(String value) {
            addCriterion("buy_fee <=", value, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeLike(String value) {
            addCriterion("buy_fee like", value, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeNotLike(String value) {
            addCriterion("buy_fee not like", value, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeIn(List<String> values) {
            addCriterion("buy_fee in", values, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeNotIn(List<String> values) {
            addCriterion("buy_fee not in", values, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeBetween(String value1, String value2) {
            addCriterion("buy_fee between", value1, value2, "buyFee");
            return (Criteria) this;
        }

        public Criteria andBuyFeeNotBetween(String value1, String value2) {
            addCriterion("buy_fee not between", value1, value2, "buyFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeIsNull() {
            addCriterion("sell_fee is null");
            return (Criteria) this;
        }

        public Criteria andSellFeeIsNotNull() {
            addCriterion("sell_fee is not null");
            return (Criteria) this;
        }

        public Criteria andSellFeeEqualTo(String value) {
            addCriterion("sell_fee =", value, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeNotEqualTo(String value) {
            addCriterion("sell_fee <>", value, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeGreaterThan(String value) {
            addCriterion("sell_fee >", value, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeGreaterThanOrEqualTo(String value) {
            addCriterion("sell_fee >=", value, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeLessThan(String value) {
            addCriterion("sell_fee <", value, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeLessThanOrEqualTo(String value) {
            addCriterion("sell_fee <=", value, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeLike(String value) {
            addCriterion("sell_fee like", value, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeNotLike(String value) {
            addCriterion("sell_fee not like", value, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeIn(List<String> values) {
            addCriterion("sell_fee in", values, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeNotIn(List<String> values) {
            addCriterion("sell_fee not in", values, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeBetween(String value1, String value2) {
            addCriterion("sell_fee between", value1, value2, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSellFeeNotBetween(String value1, String value2) {
            addCriterion("sell_fee not between", value1, value2, "sellFee");
            return (Criteria) this;
        }

        public Criteria andSourceIsNull() {
            addCriterion("source is null");
            return (Criteria) this;
        }

        public Criteria andSourceIsNotNull() {
            addCriterion("source is not null");
            return (Criteria) this;
        }

        public Criteria andSourceEqualTo(String value) {
            addCriterion("source =", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotEqualTo(String value) {
            addCriterion("source <>", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceGreaterThan(String value) {
            addCriterion("source >", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceGreaterThanOrEqualTo(String value) {
            addCriterion("source >=", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLessThan(String value) {
            addCriterion("source <", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLessThanOrEqualTo(String value) {
            addCriterion("source <=", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLike(String value) {
            addCriterion("source like", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotLike(String value) {
            addCriterion("source not like", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceIn(List<String> values) {
            addCriterion("source in", values, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotIn(List<String> values) {
            addCriterion("source not in", values, "source");
            return (Criteria) this;
        }

        public Criteria andSourceBetween(String value1, String value2) {
            addCriterion("source between", value1, value2, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotBetween(String value1, String value2) {
            addCriterion("source not between", value1, value2, "source");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLike(String value) {
            addCriterion("status like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotLike(String value) {
            addCriterion("status not like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<String> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<String> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andTargetCodeIsNull() {
            addCriterion("target_code is null");
            return (Criteria) this;
        }

        public Criteria andTargetCodeIsNotNull() {
            addCriterion("target_code is not null");
            return (Criteria) this;
        }

        public Criteria andTargetCodeEqualTo(String value) {
            addCriterion("target_code =", value, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeNotEqualTo(String value) {
            addCriterion("target_code <>", value, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeGreaterThan(String value) {
            addCriterion("target_code >", value, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeGreaterThanOrEqualTo(String value) {
            addCriterion("target_code >=", value, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeLessThan(String value) {
            addCriterion("target_code <", value, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeLessThanOrEqualTo(String value) {
            addCriterion("target_code <=", value, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeLike(String value) {
            addCriterion("target_code like", value, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeNotLike(String value) {
            addCriterion("target_code not like", value, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeIn(List<String> values) {
            addCriterion("target_code in", values, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeNotIn(List<String> values) {
            addCriterion("target_code not in", values, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeBetween(String value1, String value2) {
            addCriterion("target_code between", value1, value2, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetCodeNotBetween(String value1, String value2) {
            addCriterion("target_code not between", value1, value2, "targetCode");
            return (Criteria) this;
        }

        public Criteria andTargetNameIsNull() {
            addCriterion("target_name is null");
            return (Criteria) this;
        }

        public Criteria andTargetNameIsNotNull() {
            addCriterion("target_name is not null");
            return (Criteria) this;
        }

        public Criteria andTargetNameEqualTo(String value) {
            addCriterion("target_name =", value, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameNotEqualTo(String value) {
            addCriterion("target_name <>", value, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameGreaterThan(String value) {
            addCriterion("target_name >", value, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameGreaterThanOrEqualTo(String value) {
            addCriterion("target_name >=", value, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameLessThan(String value) {
            addCriterion("target_name <", value, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameLessThanOrEqualTo(String value) {
            addCriterion("target_name <=", value, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameLike(String value) {
            addCriterion("target_name like", value, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameNotLike(String value) {
            addCriterion("target_name not like", value, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameIn(List<String> values) {
            addCriterion("target_name in", values, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameNotIn(List<String> values) {
            addCriterion("target_name not in", values, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameBetween(String value1, String value2) {
            addCriterion("target_name between", value1, value2, "targetName");
            return (Criteria) this;
        }

        public Criteria andTargetNameNotBetween(String value1, String value2) {
            addCriterion("target_name not between", value1, value2, "targetName");
            return (Criteria) this;
        }

        public Criteria andPDescIsNull() {
            addCriterion("p_desc is null");
            return (Criteria) this;
        }

        public Criteria andPDescIsNotNull() {
            addCriterion("p_desc is not null");
            return (Criteria) this;
        }

        public Criteria andPDescEqualTo(String value) {
            addCriterion("p_desc =", value, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescNotEqualTo(String value) {
            addCriterion("p_desc <>", value, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescGreaterThan(String value) {
            addCriterion("p_desc >", value, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescGreaterThanOrEqualTo(String value) {
            addCriterion("p_desc >=", value, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescLessThan(String value) {
            addCriterion("p_desc <", value, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescLessThanOrEqualTo(String value) {
            addCriterion("p_desc <=", value, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescLike(String value) {
            addCriterion("p_desc like", value, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescNotLike(String value) {
            addCriterion("p_desc not like", value, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescIn(List<String> values) {
            addCriterion("p_desc in", values, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescNotIn(List<String> values) {
            addCriterion("p_desc not in", values, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescBetween(String value1, String value2) {
            addCriterion("p_desc between", value1, value2, "pDesc");
            return (Criteria) this;
        }

        public Criteria andPDescNotBetween(String value1, String value2) {
            addCriterion("p_desc not between", value1, value2, "pDesc");
            return (Criteria) this;
        }

        public Criteria andAccIdIsNull() {
            addCriterion("acc_id is null");
            return (Criteria) this;
        }

        public Criteria andAccIdIsNotNull() {
            addCriterion("acc_id is not null");
            return (Criteria) this;
        }

        public Criteria andAccIdEqualTo(String value) {
            addCriterion("acc_id =", value, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdNotEqualTo(String value) {
            addCriterion("acc_id <>", value, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdGreaterThan(String value) {
            addCriterion("acc_id >", value, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdGreaterThanOrEqualTo(String value) {
            addCriterion("acc_id >=", value, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdLessThan(String value) {
            addCriterion("acc_id <", value, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdLessThanOrEqualTo(String value) {
            addCriterion("acc_id <=", value, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdLike(String value) {
            addCriterion("acc_id like", value, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdNotLike(String value) {
            addCriterion("acc_id not like", value, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdIn(List<String> values) {
            addCriterion("acc_id in", values, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdNotIn(List<String> values) {
            addCriterion("acc_id not in", values, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdBetween(String value1, String value2) {
            addCriterion("acc_id between", value1, value2, "accId");
            return (Criteria) this;
        }

        public Criteria andAccIdNotBetween(String value1, String value2) {
            addCriterion("acc_id not between", value1, value2, "accId");
            return (Criteria) this;
        }

        public Criteria andStockNumCanIsNull() {
            addCriterion("stock_num_can is null");
            return (Criteria) this;
        }

        public Criteria andStockNumCanIsNotNull() {
            addCriterion("stock_num_can is not null");
            return (Criteria) this;
        }

        public Criteria andStockNumCanEqualTo(String value) {
            addCriterion("stock_num_can =", value, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanNotEqualTo(String value) {
            addCriterion("stock_num_can <>", value, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanGreaterThan(String value) {
            addCriterion("stock_num_can >", value, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanGreaterThanOrEqualTo(String value) {
            addCriterion("stock_num_can >=", value, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanLessThan(String value) {
            addCriterion("stock_num_can <", value, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanLessThanOrEqualTo(String value) {
            addCriterion("stock_num_can <=", value, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanLike(String value) {
            addCriterion("stock_num_can like", value, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanNotLike(String value) {
            addCriterion("stock_num_can not like", value, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanIn(List<String> values) {
            addCriterion("stock_num_can in", values, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanNotIn(List<String> values) {
            addCriterion("stock_num_can not in", values, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanBetween(String value1, String value2) {
            addCriterion("stock_num_can between", value1, value2, "stockNumCan");
            return (Criteria) this;
        }

        public Criteria andStockNumCanNotBetween(String value1, String value2) {
            addCriterion("stock_num_can not between", value1, value2, "stockNumCan");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}